X-Git-Url: https://shimmer.witbreuk.eu/gitweb/UltimateKEYS.git/blobdiff_plain/1922b9fd344409699acc51037ec5895c200785b9..881aa1a5f2449c5525d73683a7eeaef2abbc9b07:/autohotkey/UltimateKEYS%20(for%20AutoHotkey%20v2).ahk?ds=inline diff --git a/autohotkey/UltimateKEYS (for AutoHotkey v2).ahk b/autohotkey/UltimateKEYS (for AutoHotkey v2).ahk index 44326a5..7ab4429 100644 --- a/autohotkey/UltimateKEYS (for AutoHotkey v2).ahk +++ b/autohotkey/UltimateKEYS (for AutoHotkey v2).ahk @@ -1,24 +1,22 @@ #requires AutoHotkey v2 -; UltimateKEYS (for AutoHotkey v2).ahk - 2023-07-15 +; UltimateKEYS (for AutoHotkey v2).ahk - 2024-11-30 -; Website : www.ultimatekeys.info (pieter-degroote.github.io/UltimateKEYS/) +; Website : https://pieter-degroote.github.io/UltimateKEYS/ -; License : GNU General Public License Version 3 - -; GitHub : github.com/pieter-degroote/UltimateKEYS +; GitHub : https://github.com/pieter-degroote/UltimateKEYS +; License : GNU General Public License Version 3 -; Requirements : -; Keyboard layout (on Windows) : US QWERTY +; Configuration : -; AutoHotkey v2 (www.autohotkey.com) +; Keyboard layout : US QWERTY -ListLines False ; omits recently executed lines from history (for privacy and security) KeyHistory 0 ; disables the key history (for privacy and security) +ListLines False ; omits recently executed lines from history (for privacy and security) SendMode "Input" ; optimizes for faster and more reliable input @@ -70,7 +68,6 @@ cmpAcuteAccent["y"] := "{u+00fd}" ; (ý) y with acute cmpAcuteAccent["Y"] := "{u+00dd}" ; (Ý) Y with acute cmpAcuteAccent["z"] := "{u+017a}" ; (ź) z with acute cmpAcuteAccent["Z"] := "{u+0179}" ; (Ź) Z with acute -cmpAcuteAccent[" "] := "{u+00b4}" ; (´) acute accent ; Compose : Grave Accent (`) @@ -92,7 +89,6 @@ cmpGraveAccent["w"] := "{u+1e81}" ; (ẁ) w with grave cmpGraveAccent["W"] := "{u+1e80}" ; (Ẁ) W with grave cmpGraveAccent["y"] := "{u+1ef3}" ; (ỳ) y with grave cmpGraveAccent["Y"] := "{u+1ef2}" ; (Ỳ) Y with grave -cmpGraveAccent[" "] := "{u+02cb}" ; (ˋ) grave accent (modifier) ; Compose : Diaeresis (") @@ -117,7 +113,6 @@ cmpDiaeresis["x"] := "{u+1e8d}" ; (ẍ) x with diaeresis cmpDiaeresis["X"] := "{u+1e8c}" ; (Ẍ) X with diaeresis cmpDiaeresis["y"] := "{u+00ff}" ; (ÿ) y with diaeresis cmpDiaeresis["Y"] := "{u+0178}" ; (Ÿ) Y with diaeresis -cmpDiaeresis[" "] := "{u+00a8}" ; (¨) diaeresis ; Compose : Circumflex Accent (c) @@ -149,7 +144,6 @@ cmpCircumflex["y"] := "{u+0177}" ; (ŷ) y with circumflex cmpCircumflex["Y"] := "{u+0176}" ; (Ŷ) Y with circumflex cmpCircumflex["z"] := "{u+1e91}" ; (ẑ) z with circumflex cmpCircumflex["Z"] := "{u+1e90}" ; (Ẑ) Z with circumflex -cmpCircumflex[" "] := "{u+02c6}" ; (ˆ) circumflex accent (modifier) ; Compose : Tilde (~) @@ -173,7 +167,6 @@ cmpTilde["v"] := "{u+1e7d}" ; (ṽ) v with tilde cmpTilde["V"] := "{u+1e7c}" ; (Ṽ) V with tilde cmpTilde["y"] := "{u+1ef9}" ; (ỹ) y with tilde cmpTilde["Y"] := "{u+1ef8}" ; (Ỹ) Y with tilde -cmpTilde[" "] := "{u+02dc}" ; (˜) small tilde ; Compose : Cedilla and Ogonek (,) @@ -211,8 +204,6 @@ cmpCedillaOgonek["t"] := "{u+0163}" ; (ţ) t with cedilla cmpCedillaOgonek["T"] := "{u+0162}" ; (Ţ) T with cedilla cmpCedillaOgonek["u"] := "{u+0173}" ; (ų) u with ogonek cmpCedillaOgonek["U"] := "{u+0172}" ; (Ų) U with ogonek -cmpCedillaOgonek["."] := "{u+02db}" ; (˛) ogonek -cmpCedillaOgonek[" "] := "{u+00b8}" ; (¸) cedilla ; Compose : Caron (v) @@ -253,7 +244,6 @@ cmpCaron["z"] := "{u+017e}" ; (ž) z with caron cmpCaron["Z"] := "{u+017d}" ; (Ž) Z with caron cmpCaron["3"] := "{u+01ef}" ; (ǯ) small letter ezh with caron cmpCaron["#"] := "{u+01ee}" ; (Ǯ) capital letter ezh with caron -cmpCaron[" "] := "{u+02c7}" ; (ˇ) caron ; Compose : Dot Above (.) @@ -355,7 +345,6 @@ cmpMacronStroke["y"] := "{u+0233}" ; (ȳ) y with macron cmpMacronStroke["Y"] := "{u+0232}" ; (Ȳ) Y with macron cmpMacronStroke["z"] := "{u+01b6}" ; (ƶ) z with stroke cmpMacronStroke["Z"] := "{u+01b5}" ; (Ƶ) Z with stroke -cmpMacronStroke[" "] := "{u+00af}" ; (¯) macron ; Compose : Macron and Stroke (additional) (_) @@ -435,7 +424,6 @@ cmpBreveSpecial["y"] := "{u+021d}" ; (ȝ) small letter yogh cmpBreveSpecial["Y"] := "{u+021c}" ; (Ȝ) capital letter yogh cmpBreveSpecial["3"] := "{u+0292}" ; (ʒ) small letter ezh cmpBreveSpecial["#"] := "{u+01b7}" ; (Ʒ) capital letter ezh -cmpBreveSpecial[" "] := "{u+02d8}" ; (˘) breve ; Compose : Double Acute Accent (=) @@ -445,10 +433,9 @@ cmpDoubleAcute["o"] := "{u+0151}" ; (ő) o with double acute cmpDoubleAcute["O"] := "{u+0150}" ; (Ő) O with double acute cmpDoubleAcute["u"] := "{u+0171}" ; (ű) u with double acute cmpDoubleAcute["U"] := "{u+0170}" ; (Ű) U with double acute -cmpDoubleAcute[" "] := "{u+02dd}" ; (˝) double acute accent -; Compose : Hook and Horn (h) +; Compose : Hook, Horn and Variations (h) global cmpSmallH := Map() cmpSmallH["b"] := "{u+0253}" ; (ɓ) b with hook @@ -467,6 +454,8 @@ cmpSmallH["H"] := "{u+a7aa}" ; (Ɦ) H with hook cmpSmallH["j"] := "{u+0267}" ; (ɧ) small letter heng with hook cmpSmallH["k"] := "{u+0199}" ; (ƙ) k with hook cmpSmallH["K"] := "{u+0198}" ; (Ƙ) K with hook +cmpSmallH["l"] := "{u+026c}" ; (ɬ) l with belt +cmpSmallH["L"] := "{u+a7ad}" ; (Ɬ) L with belt cmpSmallH["m"] := "{u+0271}" ; (ɱ) m with hook cmpSmallH["M"] := "{u+2c6e}" ; (Ɱ) M with hook cmpSmallH["n"] := "{u+0272}" ; (ɲ) n with left hook @@ -494,15 +483,17 @@ cmpSmallH["z"] := "{u+0225}" ; (ȥ) z with hook cmpSmallH["Z"] := "{u+0224}" ; (Ȥ) Z with hook -; Compose : Retroflex Hook, Right Hook, Crossed-Tail and Variations (f) +; Compose : Retroflex Hook and Variations (f) global cmpSmallF := Map() cmpSmallF["d"] := "{u+1d91}" ; (ᶑ) d with hook and tail cmpSmallF["e"] := "{u+025d}" ; (ɝ) small letter reversed open e with hook +cmpSmallF["f"] := "{u+1d94}" ; (ᶔ) small letter reversed open e with retroflex hook cmpSmallF["g"] := "{u+ab36}" ; (ꬶ) small letter script g with crossed-tail cmpSmallF["h"] := "{u+a727}" ; (ꜧ) small letter heng cmpSmallF["H"] := "{u+a726}" ; (Ꜧ) capital letter heng cmpSmallF["j"] := "{u+029d}" ; (ʝ) j with crossed-tail +cmpSmallF["J"] := "{u+a7b2}" ; (Ʝ) J with crossed-tail cmpSmallF["l"] := "{u+026d}" ; (ɭ) l with retroflex hook cmpSmallF["n"] := "{u+0273}" ; (ɳ) n with retroflex hook cmpSmallF["q"] := "{u+02a0}" ; (ʠ) q with hook @@ -510,11 +501,20 @@ cmpSmallF["r"] := "{u+027e}" ; (ɾ) r with fishhook cmpSmallF["t"] := "{u+0288}" ; (ʈ) t with retroflex hook cmpSmallF["T"] := "{u+01ae}" ; (Ʈ) T with retroflex hook cmpSmallF["v"] := "{u+2c71}" ; (ⱱ) v with right hook -cmpSmallF["w"] := "{u+2c73}" ; (ⱳ) w with right hook -cmpSmallF["W"] := "{u+2c72}" ; (Ⱳ) W with right hook cmpSmallF["z"] := "{u+0290}" ; (ʐ) z with retroflex hook +; Compose : Swash Tail and Variations (t) + +global cmpSmallT := Map() +cmpSmallT["l"] := "{u+2c61}" ; (ⱡ) l with double bar +cmpSmallT["L"] := "{u+2c60}" ; (Ⱡ) L with double bar +cmpSmallT["s"] := "{u+023f}" ; (ȿ) s with swash tail +cmpSmallT["S"] := "{u+2c7e}" ; (Ȿ) S with swash tail +cmpSmallT["z"] := "{u+0240}" ; (ɀ) z with swash tail +cmpSmallT["Z"] := "{u+2c7f}" ; (Ɀ) Z with swash tail + + ; Compose : Latin Greek Letters and Variations (l) global cmpSmallL := Map() @@ -552,12 +552,13 @@ cmpSmallL["&"] := "{u+0241}" ; (Ɂ) capital letter glottal stop cmpSmallL["?"] := "{u+0294}" ; (ʔ) unicase letter glottal stop -; Compose : Turned Letters (r) +; Compose : Turned and Reversed Letters (r) global cmpSmallR := Map() cmpSmallR["a"] := "{u+0250}" ; (ɐ) small letter turned a cmpSmallR["A"] := "{u+2c6f}" ; (Ɐ) capital letter turned A cmpSmallR["b"] := "{u+025c}" ; (ɜ) small letter reversed open e +cmpSmallR["B"] := "{u+a7ab}" ; (Ɜ) capital letter reversed open E cmpSmallR["d"] := "{u+018d}" ; (ƍ) Latin small letter turned delta cmpSmallR["e"] := "{u+01dd}" ; (ǝ) small letter turned e cmpSmallR["E"] := "{u+018e}" ; (Ǝ) capital letter reversed E @@ -576,10 +577,13 @@ cmpSmallR["q"] := "{u+0252}" ; (ɒ) Latin small letter turned alpha cmpSmallR["Q"] := "{u+2c70}" ; (Ɒ) Latin capital letter turned alpha cmpSmallR["r"] := "{u+0279}" ; (ɹ) small letter turned r cmpSmallR["t"] := "{u+0287}" ; (ʇ) small letter turned t +cmpSmallR["T"] := "{u+a7b1}" ; (Ʇ) small letter turned T cmpSmallR["v"] := "{u+028c}" ; (ʌ) small letter turned v cmpSmallR["V"] := "{u+0245}" ; (Ʌ) capital letter turned V cmpSmallR["w"] := "{u+028d}" ; (ʍ) small letter turned w cmpSmallR["y"] := "{u+028e}" ; (ʎ) small letter turned y +cmpSmallR["z"] := "{u+01b9}" ; (ƹ) Latin small letter ezh reversed +cmpSmallR["Z"] := "{u+01b8}" ; (Ƹ) Latin capital letter ezh reversed ; Compose : Currency Symbols ($) @@ -627,7 +631,6 @@ cmpCurrency["W"] := "{u+20a9}" ; (₩) South Korean won cmpCurrency["x"] := "{u+00a4}" ; (¤) currency sign cmpCurrency["y"] := "{u+00a5}" ; (¥) yen sign cmpCurrency["Y"] := "{u+00a5}" ; (¥) yen sign -cmpCurrency[" "] := "{u+00a4}" ; (¤) currency sign ; Compose : Greek Alphabet (g) @@ -768,8 +771,8 @@ cmpSpace["8"] := "{u+200a}" ; hair space cmpSpace["9"] := "{u+2007}" ; figure space cmpSpace["0"] := "{u+200b}" ; zero-width space (ZWSP) cmpSpace["m"] := "{u+205f}" ; medium mathematical space (MMSP) +cmpSpace["n"] := "{u+202f}" ; narrow no-break space (NNBSP) cmpSpace[" "] := "{u+00a0}" ; non-breaking space (NBSP) -cmpSpace["."] := "{u+202f}" ; narrow no-break space (NNBSP) cmpMacronStroke["2"] := "{u+2013}" ; (–) en dash cmpMacronStroke["3"] := "{u+2014}" ; (—) em dash cmpMacronStroke["4"] := "{u+2015}" ; (―) horizontal bar @@ -781,7 +784,7 @@ cmpQuad["2"] := "{u+2000}" ; en quad cmpQuad["3"] := "{u+2001}" ; em quad -; Compose : Arrows and Pointers +; Compose : Arrows and Pointing Triangles global cmpArrow := Map() cmpArrow["w"] := "{u+25b2}" ; (▲) black up-pointing triangle @@ -817,21 +820,29 @@ cmpDoubleAcute["0"] := "{u+21d4}" ; (⇔) left right double arrow ; Compose : Various Symbols (s) global cmpSymbols := Map() -cmpSymbols["a"] := "{u+214d}" ; (⅍) aktieselskab +cmpSymbols["a"] := "{u+2100}" ; (℀) account of cmpSymbols["b"] := "{u+203d}" ; (‽) interrobang cmpSymbols["B"] := "{u+2e18}" ; (⸘) inverted interrobang cmpSymbols["c"] := "{u+2105}" ; (℅) care of cmpSymbols["d"] := "{u+22c4}" ; (⋄) diamond operator cmpSymbols["e"] := "{u+212e}" ; (℮) estimated symbol cmpSymbols["f"] := "{u+2640}" ; (♀) female sign (Venus) -cmpSymbols["h"] := "{u+2126}" ; (Ω) ohm sign (backwards compatibility) +cmpSymbols["h"] := "{u+2302}" ; (⌂) house +cmpSymbols["H"] := "{u+2126}" ; (Ω) ohm sign (backwards compatibility) cmpSymbols["i"] := "{u+2300}" ; (⌀) diameter sign +cmpSymbols["j"] := "{u+2101}" ; (℁) addressed to the subject +cmpSymbols["k"] := "{u+214d}" ; (⅍) aktieselskab cmpSymbols["l"] := "{u+2113}" ; (ℓ) script small l cmpSymbols["L"] := "{u+2112}" ; (ℒ) Laplace transform cmpSymbols["m"] := "{u+2642}" ; (♂) male sign (Mars) cmpSymbols["M"] := "{u+2120}" ; (℠) service mark -cmpSymbols["r"] := "{u+211e}" ; (℞) prescription take (Recipere) -cmpSymbols["R"] := "{u+211e}" ; (℞) prescription take (Recipere) +cmpSymbols["p"] := "{u+211e}" ; (℞) prescription take (Recipere) +cmpSymbols["P"] := "{u+211e}" ; (℞) prescription take (Recipere) +cmpSymbols["r"] := "{u+211f}" ; (℟) response (liturgy) +cmpSymbols["R"] := "{u+211f}" ; (℟) response (liturgy) +cmpSymbols["u"] := "{u+2106}" ; (℆) cada una (each one) +cmpSymbols["v"] := "{u+2123}" ; (℣) versicle (liturgy) +cmpSymbols["V"] := "{u+2123}" ; (℣) versicle (liturgy) cmpSymbols["x"] := "{u+203b}" ; (※) reference mark cmpSymbols["2"] := "{u+266b}" ; (♫) beamed eighth notes cmpSymbols["3"] := "{u+2042}" ; (⁂) asterism @@ -893,12 +904,12 @@ cmpMathSymbols["4"] := "{u+2237}" ; (∷) proportion sign cmpMathSymbols["6"] := "{u+2220}" ; (∠) angle symbol cmpMathSymbols["9"] := "{u+221f}" ; (∟) right angle cmpMathSymbols["0"] := "{u+2221}" ; (∡) measured angle +cmpMathSymbols["."] := "{u+22c5}" ; (⋅) dot operator +cmpMathSymbols["="] := "{u+225d}" ; (≝) equal to by definition cmpMathSymbols["+"] := "{u+2295}" ; (⊕) circled plus cmpMathSymbols["-"] := "{u+2296}" ; (⊖) circled minus cmpMathSymbols["*"] := "{u+2297}" ; (⊗) circled times cmpMathSymbols["/"] := "{u+2298}" ; (⊘) circled division slash -cmpMathSymbols["."] := "{u+2299}" ; (⊙) circled dot operator -cmpMathSymbols["="] := "{u+225d}" ; (≝) equal to by definition cmpMathSymbols[";"] := "{u+2235}" ; (∵) because sign cmpMathSymbols[":"] := "{u+2234}" ; (∴) therefore sign cmpMathSymbols["&"] := "{u+2227}" ; (∧) logical and @@ -916,7 +927,6 @@ global cmpSmallN := Map() global cmpCapitalN := Map() global cmpCapitalO := Map() global cmpCapitalS := Map() -global cmpSmallT := Map() global cmpCapitalT := Map() cmpArrow["e"] := "{u+00e6}" ; (æ) letter ae cmpCapitalA["E"] := "{u+00c6}" ; (Æ) letter AE @@ -939,7 +949,7 @@ cmpCapitalT["H"] := "{u+00de}" ; (Þ) capital letter thorn global cmpDigitEight := Map() global cmpCapitalP := Map() -global cmpSemicolon := Map() +global cmpVerticalLine := Map() global cmpAsterisk := Map() global cmpExclam := Map() global cmpQuestion := Map() @@ -964,14 +974,7 @@ cmpSmallR["4"] := "{u+221c}" ; (∜) fourth root cmpSymbols["o"] := "{u+00a7}" ; (§) section sign cmpCapitalS["o"] := "{u+00a7}" ; (§) section sign cmpSmallT["m"] := "{u+2122}" ; (™) trademark symbol -cmpSemicolon["b"] := "{u+2022}" ; (•) bullet -cmpSemicolon[";"] := "{u+2022}" ; (•) bullet -cmpSemicolon["t"] := "{u+2023}" ; (‣) triangular bullet -cmpSemicolon[">"] := "{u+2023}" ; (‣) triangular bullet -cmpSemicolon["h"] := "{u+2043}" ; (⁃) hyphen bullet -cmpSemicolon["-"] := "{u+2043}" ; (⁃) hyphen bullet -cmpSemicolon["w"] := "{u+25e6}" ; (◦) white bullet -cmpSemicolon["o"] := "{u+25e6}" ; (◦) white bullet +cmpVerticalLine["|"] := "{u+2016}" ; (‖) double vertical line cmpAcuteAccent["1"] := "{u+2032}" ; (′) prime cmpAcuteAccent["2"] := "{u+2033}" ; (″) double prime cmpAcuteAccent["3"] := "{u+2034}" ; (‴) triple prime @@ -980,9 +983,9 @@ cmpAsterisk["*"] := "{u+00d7}" ; (×) multiplication sign cmpStroke["/"] := "{u+00f7}" ; (÷) division sign cmpAsterisk["o"] := "{u+00b0}" ; (°) degree sign cmpRingAbove["*"] := "{u+00b0}" ; (°) degree sign -cmpDotAbove["."] := "{u+00b7}" ; (·) middle dot -cmpDotAbove[" "] := "{u+00b7}" ; (·) middle dot +cmpDotAbove["-"] := "{u+00b7}" ; (·) middle dot cmpDotAbove["3"] := "{u+2026}" ; (…) horizontal ellipsis +cmpDotAbove["."] := "{u+2026}" ; (…) horizontal ellipsis cmpArrow["-"] := "{u+00aa}" ; (ª) feminine ordinal indicator (Spanish, Portuguese, Italian, Galician) cmpRingAbove["-"] := "{u+00ba}" ; (º) masculine ordinal indicator (Spanish, Portuguese, Italian, Galician) cmpExclam["!"] := "{u+00a1}" ; (¡) inverted exclamation mark @@ -1007,6 +1010,30 @@ cmpGreaterThan["+"] := "{u+2a7e}" ; (⩾) greater-than or slanted equal to cmpTilde["~"] := "{u+2248}" ; (≈) almost equal to +; Compose : Bullets and Small Geometric Shapes (;) + +global cmpSemicolon := Map() +cmpSemicolon["b"] := "{u+2022}" ; (•) bullet +cmpSemicolon["o"] := "{u+25e6}" ; (◦) white bullet +cmpSemicolon["h"] := "{u+2043}" ; (⁃) hyphen bullet +cmpSemicolon["t"] := "{u+2023}" ; (‣) triangular bullet +cmpSemicolon["q"] := "{u+25aa}" ; (▪) black small square +cmpSemicolon["u"] := "{u+25ab}" ; (▫) white small square +cmpSemicolon["w"] := "{u+25b4}" ; (▴) black up-pointing small triangle +cmpSemicolon["a"] := "{u+25c2}" ; (◂) black left-pointing small triangle +cmpSemicolon["s"] := "{u+25be}" ; (▾) black down-pointing small triangle +cmpSemicolon["d"] := "{u+25b8}" ; (▸) black right-pointing small triangle +cmpSemicolon["i"] := "{u+25b5}" ; (▵) white up-pointing small triangle +cmpSemicolon["j"] := "{u+25c3}" ; (◃) white left-pointing small triangle +cmpSemicolon["k"] := "{u+25bf}" ; (▿) white down-pointing small triangle +cmpSemicolon["l"] := "{u+25b9}" ; (▹) white right-pointing small triangle +cmpSemicolon["z"] := "{u+25a0}" ; (■) black square +cmpSemicolon["x"] := "{u+25a1}" ; (□) white square +cmpSemicolon["c"] := "{u+25c6}" ; (◆) black diamond +cmpSemicolon["v"] := "{u+25c7}" ; (◇) white diamond +cmpSemicolon[";"] := "{u+2022}" ; (•) bullet + + ; Compose : Vulgar Fractions global cmpDigitOne := Map() @@ -1046,6 +1073,7 @@ cmpCedillaOgonek[chr(34)] := "{u+201e}" ; („) double low-9 quotation mark cmpDiaeresis[","] := "{u+201e}" ; („) double low-9 quotation mark cmpCedillaOgonek["'"] := "{u+201a}" ; (‚) single low-9 quotation mark cmpAcuteAccent[","] := "{u+201a}" ; (‚) single low-9 quotation mark +cmpCedillaOgonek[","] := "{u+201a}" ; (‚) single low-9 quotation mark cmpDiaeresis["["] := "{u+201c}" ; (“) left double quotation mark cmpBracketLeft[chr(34)] := "{u+201c}" ; (“) left double quotation mark cmpDiaeresis["]"] := "{u+201d}" ; (”) right double quotation mark @@ -1274,6 +1302,8 @@ cmpDigitTwo["s"] := "{u+2691}" ; (⚑) black flag cmpDigitTwo["t"] := "{u+26a0}" ; (⚠) warning sign cmpDigitTwo["u"] := "{u+26a1}" ; (⚡) high voltage sign cmpDigitTwo["v"] := "{u+26d4}" ; (⛔) no entry +cmpDigitTwo["w"] := "{u+231a}" ; (⌚) watch +cmpDigitTwo["x"] := "{u+231b}" ; (⌛) hourglass cmpDigitThree["a"] := "{u+2701}" ; (✁) upper blade scissors cmpDigitThree["b"] := "{u+2702}" ; (✂) black scissors @@ -1456,444 +1486,591 @@ cmpSmallN["9"] := "{u+277e}" ; (❾) dingbat negative circled digit 9 cmpSmallN["0"] := "{u+277f}" ; (❿) dingbat negative circled digit 10 -; Configuration : 'Right Alt' and 'Right Alt + Shift' on US QWERTY +; Configuration : 'AltGr (RAlt)' and 'AltGr (RAlt) + Shift' modifiers + +; Key : 1 +>!sc002:: +<^>!sc002::Send "{u+00a1}" ; (¡) inverted exclamation mark +>!+sc002:: +<^>!+sc002::Send "{u+00b9}" ; (¹) superscript 1 + +; Key : 2 +>!sc003:: +<^>!sc003::Send "{u+2264}" ; (≤) less-than or equal to +>!+sc003:: +<^>!+sc003::Send "{u+00b2}" ; (²) superscript 2 + +; Key : 3 +>!sc004:: +<^>!sc004::Send "{u+2265}" ; (≥) greater-than or equal to +>!+sc004:: +<^>!+sc004::Send "{u+00b3}" ; (³) superscript 3 + +; Key : 4 +>!sc005:: +<^>!sc005::Send "{u+00a3}" ; (£) pound sign +>!+sc005:: +<^>!+sc005::Send "{u+00a5}" ; (¥) yen sign + +; Key : 5 +>!sc006:: +<^>!sc006::Send "{u+20ac}" ; (€) euro sign +>!+sc006:: +<^>!+sc006::Send "{u+00a2}" ; (¢) cent sign (dollar) + +; Key : 6 +>!sc007:: +<^>!sc007:: { + if GetKeyState("CapsLock", "T") + Send "{u+00c3}" ; (Ã) A with tilde + else + Send "{u+00e3}" ; (ã) a with tilde +} +>!+sc007:: +<^>!+sc007:: { + if GetKeyState("CapsLock", "T") + Send "{u+00e3}" ; (ã) a with tilde + else + Send "{u+00c3}" ; (Ã) A with tilde +} ->!a:: { +; Key : 7 +>!sc008:: +<^>!sc008:: { if GetKeyState("CapsLock", "T") - Send "{u+00c4}" ; (Ä) A with diaeresis + Send "{u+00d5}" ; (Õ) O with tilde else - Send "{u+00e4}" ; (ä) a with diaeresis + Send "{u+00f5}" ; (õ) o with tilde } ->!+a:: { +>!+sc008:: +<^>!+sc008:: { if GetKeyState("CapsLock", "T") - Send "{u+00e4}" ; (ä) a with diaeresis + Send "{u+00f5}" ; (õ) o with tilde else - Send "{u+00c4}" ; (Ä) A with diaeresis + Send "{u+00d5}" ; (Õ) O with tilde } ->!q:: { +; Key : 8 +>!sc009:: +<^>!sc009::Send "{u+201e}" ; („) double low-9 quotation mark +>!+sc009:: +<^>!+sc009::Send "{u+00a7}" ; (§) section sign + +; Key : 9 +>!sc00A:: +<^>!sc00A::Send "{u+201c}" ; (“) left double quotation mark +>!+sc00A:: +<^>!+sc00A::Send "{u+2018}" ; (‘) left single quotation mark + +; Key : 0 +>!sc00B:: +<^>!sc00B::Send "{u+201d}" ; (”) right double quotation mark +>!+sc00B:: +<^>!+sc00B::Send "{u+2019}" ; (’) right single quotation mark + +; Key : - / _ (hyphen-minus / underscore) +>!sc00C:: +<^>!sc00C::Send "{u+2013}" ; (–) en dash +>!+sc00C:: +<^>!+sc00C::Send "{u+2014}" ; (—) em dash + +; Key : = / + (equals sign / plus sign) +>!sc00D:: +<^>!sc00D::Send "{u+00d7}" ; (×) multiplication sign +>!+sc00D:: +<^>!+sc00D::Send "{u+00f7}" ; (÷) division sign + +; Key : Q +>!sc010:: +<^>!sc010:: { if GetKeyState("CapsLock", "T") Send "{u+00c6}" ; (Æ) letter AE else Send "{u+00e6}" ; (æ) letter ae } ->!+q:: { +>!+sc010:: +<^>!+sc010:: { if GetKeyState("CapsLock", "T") Send "{u+00e6}" ; (æ) letter ae else Send "{u+00c6}" ; (Æ) letter AE } ->!w:: { +; Key : W +>!sc011:: +<^>!sc011:: { if GetKeyState("CapsLock", "T") Send "{u+00c5}" ; (Å) A with ring above else Send "{u+00e5}" ; (å) a with ring above } ->!+w:: { +>!+sc011:: +<^>!+sc011:: { if GetKeyState("CapsLock", "T") Send "{u+00e5}" ; (å) a with ring above else Send "{u+00c5}" ; (Å) A with ring above } ->!z:: { +; Key : E +>!sc012:: +<^>!sc012:: { if GetKeyState("CapsLock", "T") - Send "{u+00c0}" ; (À) A with grave + Send "{u+00cb}" ; (Ë) E with diaeresis else - Send "{u+00e0}" ; (à) a with grave + Send "{u+00eb}" ; (ë) e with diaeresis } ->!+z:: { +>!+sc012:: +<^>!+sc012:: { if GetKeyState("CapsLock", "T") - Send "{u+00e0}" ; (à) a with grave + Send "{u+00eb}" ; (ë) e with diaeresis else - Send "{u+00c0}" ; (À) A with grave + Send "{u+00cb}" ; (Ë) E with diaeresis } ->!x:: { +; Key : R +>!sc013:: +<^>!sc013:: { if GetKeyState("CapsLock", "T") - Send "{u+00c1}" ; (Á) A with acute + Send "{u+00ca}" ; (Ê) E with circumflex else - Send "{u+00e1}" ; (á) a with acute + Send "{u+00ea}" ; (ê) e with circumflex } ->!+x:: { +>!+sc013:: +<^>!+sc013:: { if GetKeyState("CapsLock", "T") - Send "{u+00e1}" ; (á) a with acute + Send "{u+00ea}" ; (ê) e with circumflex else - Send "{u+00c1}" ; (Á) A with acute + Send "{u+00ca}" ; (Ê) E with circumflex } ->!d:: { +; Key : T +>!sc014:: +<^>!sc014:: { if GetKeyState("CapsLock", "T") - Send "{u+00c2}" ; (Â) A with circumflex + Send "{u+00ce}" ; (Î) I with circumflex else - Send "{u+00e2}" ; (â) a with circumflex + Send "{u+00ee}" ; (î) i with circumflex } ->!+d:: { +>!+sc014:: +<^>!+sc014:: { if GetKeyState("CapsLock", "T") - Send "{u+00e2}" ; (â) a with circumflex + Send "{u+00ee}" ; (î) i with circumflex else - Send "{u+00c2}" ; (Â) A with circumflex + Send "{u+00ce}" ; (Î) I with circumflex } ->!c:: { +; Key : Y +>!sc015:: +<^>!sc015:: { if GetKeyState("CapsLock", "T") - Send "{u+00c7}" ; (Ç) C with cedilla + Send "{u+00db}" ; (Û) U with circumflex else - Send "{u+00e7}" ; (ç) c with cedilla + Send "{u+00fb}" ; (û) u with circumflex } ->!+c:: { +>!+sc015:: +<^>!+sc015:: { if GetKeyState("CapsLock", "T") - Send "{u+00e7}" ; (ç) c with cedilla + Send "{u+00fb}" ; (û) u with circumflex else - Send "{u+00c7}" ; (Ç) C with cedilla + Send "{u+00db}" ; (Û) U with circumflex } ->!e:: { +; Key : U +>!sc016:: +<^>!sc016:: { if GetKeyState("CapsLock", "T") - Send "{u+00cb}" ; (Ë) E with diaeresis + Send "{u+00dc}" ; (Ü) U with diaeresis else - Send "{u+00eb}" ; (ë) e with diaeresis + Send "{u+00fc}" ; (ü) u with diaeresis } ->!+e:: { +>!+sc016:: +<^>!+sc016:: { if GetKeyState("CapsLock", "T") - Send "{u+00eb}" ; (ë) e with diaeresis + Send "{u+00fc}" ; (ü) u with diaeresis else - Send "{u+00cb}" ; (Ë) E with diaeresis + Send "{u+00dc}" ; (Ü) U with diaeresis } ->!f:: { +; Key : I +>!sc017:: +<^>!sc017:: { if GetKeyState("CapsLock", "T") - Send "{u+00c8}" ; (È) E with grave + Send "{u+00cf}" ; (Ï) I with diaeresis else - Send "{u+00e8}" ; (è) e with grave + Send "{u+00ef}" ; (ï) i with diaeresis } ->!+f:: { +>!+sc017:: +<^>!+sc017:: { if GetKeyState("CapsLock", "T") - Send "{u+00e8}" ; (è) e with grave + Send "{u+00ef}" ; (ï) i with diaeresis else - Send "{u+00c8}" ; (È) E with grave + Send "{u+00cf}" ; (Ï) I with diaeresis } ->!g:: { +; Key : O +>!sc018:: +<^>!sc018:: { if GetKeyState("CapsLock", "T") - Send "{u+00c9}" ; (É) E with acute + Send "{u+00d6}" ; (Ö) O with diaeresis else - Send "{u+00e9}" ; (é) e with acute + Send "{u+00f6}" ; (ö) o with diaeresis } ->!+g:: { +>!+sc018:: +<^>!+sc018:: { if GetKeyState("CapsLock", "T") - Send "{u+00e9}" ; (é) e with acute + Send "{u+00f6}" ; (ö) o with diaeresis else - Send "{u+00c9}" ; (É) E with acute + Send "{u+00d6}" ; (Ö) O with diaeresis } ->!r:: { +; Key : P +>!sc019:: +<^>!sc019:: { if GetKeyState("CapsLock", "T") - Send "{u+00ca}" ; (Ê) E with circumflex + Send "{u+00d4}" ; (Ô) O with circumflex else - Send "{u+00ea}" ; (ê) e with circumflex + Send "{u+00f4}" ; (ô) o with circumflex } ->!+r:: { +>!+sc019:: +<^>!+sc019:: { if GetKeyState("CapsLock", "T") - Send "{u+00ea}" ; (ê) e with circumflex + Send "{u+00f4}" ; (ô) o with circumflex else - Send "{u+00ca}" ; (Ê) E with circumflex + Send "{u+00d4}" ; (Ô) O with circumflex } ->!i:: { +; Key : [ / { (left square bracket / left curly bracket) +>!sc01A:: +<^>!sc01A::Send "{u+00ab}" ; («) left-pointing double angle quotation mark +>!+sc01A:: +<^>!+sc01A::Send "{u+2039}" ; (‹) left-pointing single angle quotation mark + +; Key : ] / } (right square bracket / right curly bracket) +>!sc01B:: +<^>!sc01B::Send "{u+00bb}" ; (») right-pointing double angle quotation mark +>!+sc01B:: +<^>!+sc01B::Send "{u+203a}" ; (›) right-pointing single angle quotation mark + +; Key : A +>!sc01E:: +<^>!sc01E:: { if GetKeyState("CapsLock", "T") - Send "{u+00cf}" ; (Ï) I with diaeresis + Send "{u+00c4}" ; (Ä) A with diaeresis else - Send "{u+00ef}" ; (ï) i with diaeresis + Send "{u+00e4}" ; (ä) a with diaeresis } ->!+i:: { +>!+sc01E:: +<^>!+sc01E:: { if GetKeyState("CapsLock", "T") - Send "{u+00ef}" ; (ï) i with diaeresis + Send "{u+00e4}" ; (ä) a with diaeresis else - Send "{u+00cf}" ; (Ï) I with diaeresis + Send "{u+00c4}" ; (Ä) A with diaeresis } ->!v:: { +; Key : S +>!sc01F:: +<^>!sc01F:: { if GetKeyState("CapsLock", "T") - Send "{u+00cc}" ; (Ì) I with grave + Send "{u+1e9e}" ; (ẞ) capital sharp S (capital Eszett) else - Send "{u+00ec}" ; (ì) i with grave + Send "{u+00df}" ; (ß) small sharp s (Eszett) } ->!+v:: { +>!+sc01F:: +<^>!+sc01F:: { if GetKeyState("CapsLock", "T") - Send "{u+00ec}" ; (ì) i with grave + Send "{u+00df}" ; (ß) small sharp s (Eszett) else - Send "{u+00cc}" ; (Ì) I with grave + Send "{u+1e9e}" ; (ẞ) capital sharp S (capital Eszett) } ->!b:: { +; Key : D +>!sc020:: +<^>!sc020:: { if GetKeyState("CapsLock", "T") - Send "{u+00cd}" ; (Í) I with acute + Send "{u+00c2}" ; (Â) A with circumflex else - Send "{u+00ed}" ; (í) i with acute + Send "{u+00e2}" ; (â) a with circumflex } ->!+b:: { +>!+sc020:: +<^>!+sc020:: { if GetKeyState("CapsLock", "T") - Send "{u+00ed}" ; (í) i with acute + Send "{u+00e2}" ; (â) a with circumflex else - Send "{u+00cd}" ; (Í) I with acute + Send "{u+00c2}" ; (Â) A with circumflex } ->!t:: { +; Key : F +>!sc021:: +<^>!sc021:: { if GetKeyState("CapsLock", "T") - Send "{u+00ce}" ; (Î) I with circumflex + Send "{u+00c9}" ; (É) E with acute else - Send "{u+00ee}" ; (î) i with circumflex + Send "{u+00e9}" ; (é) e with acute } ->!+t:: { +>!+sc021:: +<^>!+sc021:: { if GetKeyState("CapsLock", "T") - Send "{u+00ee}" ; (î) i with circumflex + Send "{u+00e9}" ; (é) e with acute else - Send "{u+00ce}" ; (Î) I with circumflex + Send "{u+00c9}" ; (É) E with acute } ->!n:: { +; Key : G +>!sc022:: +<^>!sc022:: { if GetKeyState("CapsLock", "T") - Send "{u+00d1}" ; (Ñ) N with tilde + Send "{u+00c8}" ; (È) E with grave else - Send "{u+00f1}" ; (ñ) n with tilde + Send "{u+00e8}" ; (è) e with grave } ->!+n:: { +>!+sc022:: +<^>!+sc022:: { if GetKeyState("CapsLock", "T") - Send "{u+00f1}" ; (ñ) n with tilde + Send "{u+00e8}" ; (è) e with grave else - Send "{u+00d1}" ; (Ñ) N with tilde + Send "{u+00c8}" ; (È) E with grave } ->!o:: { +; Key : H +>!sc023:: +<^>!sc023:: { if GetKeyState("CapsLock", "T") - Send "{u+00d6}" ; (Ö) O with diaeresis + Send "{u+00da}" ; (Ú) U with acute else - Send "{u+00f6}" ; (ö) o with diaeresis + Send "{u+00fa}" ; (ú) u with acute } ->!+o:: { +>!+sc023:: +<^>!+sc023:: { if GetKeyState("CapsLock", "T") - Send "{u+00f6}" ; (ö) o with diaeresis + Send "{u+00fa}" ; (ú) u with acute else - Send "{u+00d6}" ; (Ö) O with diaeresis + Send "{u+00da}" ; (Ú) U with acute } ->!k:: { +; Key : J +>!sc024:: +<^>!sc024:: { + if GetKeyState("CapsLock", "T") + Send "{u+00d9}" ; (Ù) U with grave + else + Send "{u+00f9}" ; (ù) u with grave +} +>!+sc024:: +<^>!+sc024:: { + if GetKeyState("CapsLock", "T") + Send "{u+00f9}" ; (ù) u with grave + else + Send "{u+00d9}" ; (Ù) U with grave +} + +; Key : K +>!sc025:: +<^>!sc025:: { if GetKeyState("CapsLock", "T") Send "{u+0152}" ; (Œ) ligature OE else Send "{u+0153}" ; (œ) ligature oe } ->!+k:: { +>!+sc025:: +<^>!+sc025:: { if GetKeyState("CapsLock", "T") Send "{u+0153}" ; (œ) ligature oe else Send "{u+0152}" ; (Œ) ligature OE } ->!l:: { +; Key : L +>!sc026:: +<^>!sc026:: { if GetKeyState("CapsLock", "T") Send "{u+00d8}" ; (Ø) O with stroke else Send "{u+00f8}" ; (ø) o with stroke } ->!+l:: { +>!+sc026:: +<^>!+sc026:: { if GetKeyState("CapsLock", "T") Send "{u+00f8}" ; (ø) o with stroke else Send "{u+00d8}" ; (Ø) O with stroke } ->!,:: { +; Key : ; / : (semicolon / colon) +>!sc027:: +<^>!sc027::Send "{u+00b0}" ; (°) degree sign +>!+sc027:: +<^>!+sc027::Send "{u+00b7}" ; (·) middle dot + +; Key : ' / " (apostrophe / quotation mark) +>!sc028:: +<^>!sc028::Send "{u+266a}" ; (♪) eighth note +>!+sc028:: +<^>!+sc028::Send "{u+266b}" ; (♫) beamed eighth notes + +; Key : \ / | (backslash / vertical line) +>!sc02B:: +<^>!sc02B::Send "{u+2002}" ; en space +>!+sc02B:: +<^>!+sc02B::Send "{u+2003}" ; em space + +; Key : Z +>!sc02C:: +<^>!sc02C:: { if GetKeyState("CapsLock", "T") - Send "{u+00d2}" ; (Ò) O with grave - else - Send "{u+00f2}" ; (ò) o with grave -} ->!<:: { - if GetKeyState("CapsLock", "T") - Send "{u+00f2}" ; (ò) o with grave - else - Send "{u+00d2}" ; (Ò) O with grave -} - ->!.:: { - if GetKeyState("CapsLock", "T") - Send "{u+00d3}" ; (Ó) O with acute + Send "{u+00c1}" ; (Á) A with acute else - Send "{u+00f3}" ; (ó) o with acute + Send "{u+00e1}" ; (á) a with acute } ->!>:: { +>!+sc02C:: +<^>!+sc02C:: { if GetKeyState("CapsLock", "T") - Send "{u+00f3}" ; (ó) o with acute + Send "{u+00e1}" ; (á) a with acute else - Send "{u+00d3}" ; (Ó) O with acute + Send "{u+00c1}" ; (Á) A with acute } ->!p:: { +; Key : X +>!sc02D:: +<^>!sc02D:: { if GetKeyState("CapsLock", "T") - Send "{u+00d4}" ; (Ô) O with circumflex + Send "{u+00c0}" ; (À) A with grave else - Send "{u+00f4}" ; (ô) o with circumflex + Send "{u+00e0}" ; (à) a with grave } ->!+p:: { +>!+sc02D:: +<^>!+sc02D:: { if GetKeyState("CapsLock", "T") - Send "{u+00f4}" ; (ô) o with circumflex + Send "{u+00e0}" ; (à) a with grave else - Send "{u+00d4}" ; (Ô) O with circumflex + Send "{u+00c0}" ; (À) A with grave } ->!s:: { +; Key : C +>!sc02E:: +<^>!sc02E:: { if GetKeyState("CapsLock", "T") - Send "{u+1e9e}" ; (ẞ) capital sharp S (capital Eszett) + Send "{u+00c7}" ; (Ç) C with cedilla else - Send "{u+00df}" ; (ß) small sharp s (Eszett) + Send "{u+00e7}" ; (ç) c with cedilla } ->!+s:: { +>!+sc02E:: +<^>!+sc02E:: { if GetKeyState("CapsLock", "T") - Send "{u+00df}" ; (ß) small sharp s (Eszett) + Send "{u+00e7}" ; (ç) c with cedilla else - Send "{u+1e9e}" ; (ẞ) capital sharp S (capital Eszett) + Send "{u+00c7}" ; (Ç) C with cedilla } ->!u:: { +; Key : V +>!sc02F:: +<^>!sc02F:: { if GetKeyState("CapsLock", "T") - Send "{u+00dc}" ; (Ü) U with diaeresis + Send "{u+00cd}" ; (Í) I with acute else - Send "{u+00fc}" ; (ü) u with diaeresis + Send "{u+00ed}" ; (í) i with acute } ->!+u:: { +>!+sc02F:: +<^>!+sc02F:: { if GetKeyState("CapsLock", "T") - Send "{u+00fc}" ; (ü) u with diaeresis + Send "{u+00ed}" ; (í) i with acute else - Send "{u+00dc}" ; (Ü) U with diaeresis + Send "{u+00cd}" ; (Í) I with acute } ->!h:: { +; Key : B +>!sc030:: +<^>!sc030:: { if GetKeyState("CapsLock", "T") - Send "{u+00d9}" ; (Ù) U with grave + Send "{u+00cc}" ; (Ì) I with grave else - Send "{u+00f9}" ; (ù) u with grave + Send "{u+00ec}" ; (ì) i with grave } ->!+h:: { +>!+sc030:: +<^>!+sc030:: { if GetKeyState("CapsLock", "T") - Send "{u+00f9}" ; (ù) u with grave + Send "{u+00ec}" ; (ì) i with grave else - Send "{u+00d9}" ; (Ù) U with grave + Send "{u+00cc}" ; (Ì) I with grave } ->!j:: { +; Key : N +>!sc031:: +<^>!sc031:: { if GetKeyState("CapsLock", "T") - Send "{u+00da}" ; (Ú) U with acute + Send "{u+00d1}" ; (Ñ) N with tilde else - Send "{u+00fa}" ; (ú) u with acute + Send "{u+00f1}" ; (ñ) n with tilde } ->!+j:: { +>!+sc031:: +<^>!+sc031:: { if GetKeyState("CapsLock", "T") - Send "{u+00fa}" ; (ú) u with acute + Send "{u+00f1}" ; (ñ) n with tilde else - Send "{u+00da}" ; (Ú) U with acute + Send "{u+00d1}" ; (Ñ) N with tilde } ->!y:: { - if GetKeyState("CapsLock", "T") - Send "{u+00db}" ; (Û) U with circumflex - else - Send "{u+00fb}" ; (û) u with circumflex -} ->!+y:: { - if GetKeyState("CapsLock", "T") - Send "{u+00fb}" ; (û) u with circumflex - else - Send "{u+00db}" ; (Û) U with circumflex -} +; Key : M +>!sc032:: +<^>!sc032::Send "{u+00b5}" ; (µ) micro sign +>!+sc032:: +<^>!+sc032::Send "{u+00b1}" ; (±) plus-minus sign ->!6:: { +; Key : , / < (comma / less-than sign) +>!sc033:: +<^>!sc033:: { if GetKeyState("CapsLock", "T") - Send "{u+00c3}" ; (Ã) A with tilde + Send "{u+00d3}" ; (Ó) O with acute else - Send "{u+00e3}" ; (ã) a with tilde + Send "{u+00f3}" ; (ó) o with acute } ->!+6:: { +>!+sc033:: +<^>!+sc033:: { if GetKeyState("CapsLock", "T") - Send "{u+00e3}" ; (ã) a with tilde + Send "{u+00f3}" ; (ó) o with acute else - Send "{u+00c3}" ; (Ã) A with tilde + Send "{u+00d3}" ; (Ó) O with acute } ->!7:: { +; Key : . / > (period / greater-than sign) +>!sc034:: +<^>!sc034:: { if GetKeyState("CapsLock", "T") - Send "{u+00d5}" ; (Õ) O with tilde + Send "{u+00d2}" ; (Ò) O with grave else - Send "{u+00f5}" ; (õ) o with tilde + Send "{u+00f2}" ; (ò) o with grave } ->!+7:: { +>!+sc034:: +<^>!+sc034:: { if GetKeyState("CapsLock", "T") - Send "{u+00f5}" ; (õ) o with tilde + Send "{u+00f2}" ; (ò) o with grave else - Send "{u+00d5}" ; (Õ) O with tilde + Send "{u+00d2}" ; (Ò) O with grave } ->!m::Send "{u+00b5}" ; (µ) micro sign ->!+m::Send "{u+00b1}" ; (±) plus-minus sign - ->!1::Send "{u+00a1}" ; (¡) inverted exclamation mark ->!+1::Send "{u+00b9}" ; (¹) superscript 1 - ->!2::Send "{u+2264}" ; (≤) less-than or equal to ->!+2::Send "{u+00b2}" ; (²) superscript 2 - ->!3::Send "{u+2265}" ; (≥) greater-than or equal to ->!+3::Send "{u+00b3}" ; (³) superscript 3 - ->!4::Send "{u+00a3}" ; (£) pound sign ->!+4::Send "{u+00a5}" ; (¥) yen sign - ->!5::Send "{u+20ac}" ; (€) euro sign ->!+5::Send "{u+00a2}" ; (¢) cent sign (dollar) - ->!8::Send "{u+201e}" ; („) double low-9 quotation mark ->!+8::Send "{u+00a7}" ; (§) section sign - ->!9::Send "{u+201c}" ; (“) left double quotation mark ->!+9::Send "{u+2018}" ; (‘) left single quotation mark - ->!0::Send "{u+201d}" ; (”) right double quotation mark ->!+0::Send "{u+2019}" ; (’) right single quotation mark - ->!-::Send "{u+2013}" ; (–) en dash ->!_::Send "{u+2014}" ; (—) em dash - ->!=::Send "{u+00d7}" ; (×) multiplication sign ->!+=::Send "{u+00f7}" ; (÷) division sign - ->![::Send "{u+00ab}" ; («) left-pointing double angle quotation mark ->!{::Send "{u+2039}" ; (‹) left-pointing single angle quotation mark - ->!]::Send "{u+00bb}" ; (») right-pointing double angle quotation mark ->!}::Send "{u+203a}" ; (›) right-pointing single angle quotation mark - ->!;::Send "{u+00b0}" ; (°) degree sign ->!+;::Send "{u+00b7}" ; (·) middle dot - ->!'::Send "{u+2020}" ; (†) dagger ->!+'::Send "{u+2021}" ; (‡) double dagger +; Key : / / ? (slash / question mark) +>!sc035:: +<^>!sc035::Send "{u+00bf}" ; (¿) inverted question mark +>!+sc035:: +<^>!+sc035::Send "{u+2022}" ; (•) bullet ->!\::Send "{u+2002}" ; en space ->!|::Send "{u+2003}" ; em space - ->!/::Send "{u+00bf}" ; (¿) inverted question mark ->!?::Send "{u+2026}" ; (…) horizontal ellipsis - ->!space::Send "{u+00a0}" ; non-breaking space (NBSP) ->!+space::Send "{u+00a0}" ; non-breaking space (NBSP) +; Key : (space) +>!sc039:: +<^>!sc039::Send "{u+00a0}" ; non-breaking space (NBSP) +>!+sc039:: +<^>!+sc039::Send "{u+00a0}" ; non-breaking space (NBSP) ; Configuration : Compose Key Selector ->!`:: ->!sc056:: { +>!sc029:: +>!+sc029:: +<^>!sc029:: +<^>!+sc029:: +>!sc056:: +>!+sc056:: +<^>!sc056:: +<^>!+sc056:: { ihA := InputHook("L1", gEndKeys) ihA.Start() ihA.Wait() @@ -1966,6 +2143,10 @@ cmpSmallN["0"] := "{u+277f}" ; (❿) dingbat negative circled digit 10 if cmpSmallF.Has(ihB.Input) Send cmpSmallF[ihB.Input] } + else if (ihA.Input == "t") { + if cmpSmallT.Has(ihB.Input) + Send cmpSmallT[ihB.Input] + } else if (ihA.Input == "l") { if cmpSmallL.Has(ihB.Input) Send cmpSmallL[ihB.Input] @@ -2046,10 +2227,6 @@ cmpSmallN["0"] := "{u+277f}" ; (❿) dingbat negative circled digit 10 if cmpCapitalS.Has(ihB.Input) Send cmpCapitalS[ihB.Input] } - else if (ihA.Input == "t") { - if cmpSmallT.Has(ihB.Input) - Send cmpSmallT[ihB.Input] - } else if (ihA.Input == "T") { if cmpCapitalT.Has(ihB.Input) Send cmpCapitalT[ihB.Input] @@ -2058,9 +2235,9 @@ cmpSmallN["0"] := "{u+277f}" ; (❿) dingbat negative circled digit 10 if cmpCapitalP.Has(ihB.Input) Send cmpCapitalP[ihB.Input] } - else if (ihA.Input == ";") { - if cmpSemicolon.Has(ihB.Input) - Send cmpSemicolon[ihB.Input] + else if (ihA.Input == "|") { + if cmpVerticalLine.Has(ihB.Input) + Send cmpVerticalLine[ihB.Input] } else if (ihA.Input == "*") { if cmpAsterisk.Has(ihB.Input) @@ -2098,6 +2275,10 @@ cmpSmallN["0"] := "{u+277f}" ; (❿) dingbat negative circled digit 10 if cmpGreaterThan.Has(ihB.Input) Send cmpGreaterThan[ihB.Input] } + else if (ihA.Input == ";") { + if cmpSemicolon.Has(ihB.Input) + Send cmpSemicolon[ihB.Input] + } else if (ihA.Input == "1") { if cmpDigitOne.Has(ihB.Input) Send cmpDigitOne[ihB.Input]